﻿var Secretariats = new Array();
var lstSecretariats = document.getElementById("lstSecretariats");
var lstBoards = document.getElementById("lstBoards");

function Secretariat(Name, Boards) {
    this.Name = Name;
    this.Boards = Boards;
}

function Board(ID, Name) {
    this.ID = ID;
    this.Name = Name;
    this.IsSelected = false;
}

function ShowBoards() {
    var ChosenSec;
    for (var i = 0; i < lstSecretariats.length; i++) {
        if (lstSecretariats.options[i].selected) {
            ChosenSec = lstSecretariats.options[i].text;
            break;
        }
    }
    lstBoards.length = 0;
    for (var i = 0; i < Secretariats.length; i++) {
        if (Secretariats[i].Name == ChosenSec) {
            var Boards = Secretariats[i].Boards;
            
            // CS 9/29/10 - Add a blank option to require a board be selected
            lstBoards.options[0] = new Option("Select a Board or Commission", 0, false, false);
            
            var OptionIdx = 1;
            for (var j = 0; j < Boards.length; j++) {
                var Board = Boards[j];
                if (!Board.IsSelected) {
                    lstBoards.options[OptionIdx++] = new Option(Board.Name, Board.ID, false, false);
                }
            }
            break;
        }
    }
}

function ShowSecretariats() {
    lstSecretariats.length = 0;
    for (var i = 0; i < Secretariats.length; i++) {
        var Selected = (i == 0);
        lstSecretariats.options[i] = new Option(Secretariats[i].Name,'',Selected, Selected);
    }
}

var BrowserDetect = {
    init: function() {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function(data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    checkBrowser: function() {
        if (this.browser != "Explorer" && this.browser != "Firefox") {
            alert("This form is only tested to work with Internet Explorer or Firefox.  It appears you are using an unsupported browser.");
            return false;
        }
        return true;
    },
    searchVersion: function(dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [
		{
		    string: navigator.userAgent,
		    subString: "Chrome",
		    identity: "Chrome"
		},
		{ string: navigator.userAgent,
		    subString: "OmniWeb",
		    versionSearch: "OmniWeb/",
		    identity: "OmniWeb"
		},
		{
		    string: navigator.vendor,
		    subString: "Apple",
		    identity: "Safari",
		    versionSearch: "Version"
		},
		{
		    prop: window.opera,
		    identity: "Opera"
		},
		{
		    string: navigator.vendor,
		    subString: "iCab",
		    identity: "iCab"
		},
		{
		    string: navigator.vendor,
		    subString: "KDE",
		    identity: "Konqueror"
		},
		{
		    string: navigator.userAgent,
		    subString: "Firefox",
		    identity: "Firefox"
		},
		{
		    string: navigator.vendor,
		    subString: "Camino",
		    identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		    string: navigator.userAgent,
		    subString: "Netscape",
		    identity: "Netscape"
		},
		{
		    string: navigator.userAgent,
		    subString: "MSIE",
		    identity: "Explorer",
		    versionSearch: "MSIE"
		},
		{
		    string: navigator.userAgent,
		    subString: "Gecko",
		    identity: "Mozilla",
		    versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		    string: navigator.userAgent,
		    subString: "Mozilla",
		    identity: "Netscape",
		    versionSearch: "Mozilla"
		}
	],
    dataOS: [
		{
		    string: navigator.platform,
		    subString: "Win",
		    identity: "Windows"
		},
		{
		    string: navigator.platform,
		    subString: "Mac",
		    identity: "Mac"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPhone",
		    identity: "iPhone/iPod"
		},
		{
		    string: navigator.platform,
		    subString: "Linux",
		    identity: "Linux"
		}
	]

};
BrowserDetect.init();

